Впорядковані двійкові дерева

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2015
Тип роботи:
Лабораторна робота
Предмет:
Програмування

Частина тексту файла

Міністерство освіти і науки України Національний університет “Львівська політехніка” / ЛАБОРАТОРНА РОБОТА №10 з дисципліни: " Проблемно-орієнтоване програмування " на тему: «Впорядковані двійкові дерева» Лабораторна робота № 10 Тема роботи: Впорядковані двійкові дерева Мета роботи: ( практично закріпити знання про структуру, способи формування та застосування двійкових дерев пошуку; ( навчитися програмно створювати та опрацьовувати динамічні двійкові дерева за допомогою рекурсивних та нерекурсивних функцій. Завдання лабораторної роботи Повторити теоретичний матеріал про структуру двійкових дерев та їхні основні характеристики, організацію взаємозв’язків між елементами дерева, методи проходу по дереву, способи програмної реалізації основних операцій над даними в деревах та інше. Уважно прочитати всі розділи завдання лабораторної роботи та їхню конкретизацію в індивідуальному завданні. Продумати алгоритм та методи і форми програмної реалізації кожного із розділів завдання. У п. 1 індивідуального завдання вказано, який тип повинні мати дані, що будуть занесені в пам’ять у формі дерева. Треба підготувати два текстові файли з вхідними даними такого типу – у кожному файлі має бути не менше 15-ти відповідних елементів. Дані одного з файлів мають бути записані у порядку, що дасть змогу сформувати дерево, близьке до збалансованого. Другий набір даних має відрізнятися від першого, а дерево, побудоване для цього набору, повинно наочно ілюструвати реалізацію перетворень, вказаних в індивідуальному завданні. Для кожного зі створених наборів вхідних даних треба вручну побудувати відповідне впорядковане двійкове дерево та зобразити його графічно у звіті. Розробити та оголосити структуру, що описує вузол дерева. Якщо це доцільно для реалізації завдань лабораторної роботи, то вузол, крім адрес дочірніх елементів, може додатково зберігати й адресу батьківського вузла. Організувати послідовне зчитування даних із файла та формування з них впорядкованого двійкового дерева. Після побудови дерева його необхідно роздрукувати. Порядок проходу по дереву для відображення його елементів вказано в п. 2 індивідуального завдання. Перевірити правильність результатів за побудованим графічним зображенням дерева. У п. 3 індивідуального завдання зазначено операції (дії), які мають бути виконані над створеним деревом або його елементами. Якщо вони змінюють конфігурацію дерева (наприклад, проводиться видалення, переставляння чи заміна якихось вузлів), то необхідно роздрукувати змінене дерево (можна застосувати функцію, розроблену для реалізації п. 2) і перевірити коректність зроблених перетворень. Наприкінці роботи програми побудоване дерево треба витерти з динамічної пам’яті. Порядок видалення вузлів встановлено в п. 4. У п. 5 індивідуального завдання вказано функцію програми, яка має бути реалізована без використання рекурсії. Для повного обходу дерева у цій функції треба певним чином (наприклад, застосовуючи стек або масив) зберігати ще не пройдені (або вже пройдені) вузли та піддерева. Оформити звіт з лабораторної роботи, в якому крім тексту програми (з відповідними коментарями), треба навести вміст кожного з файлів, що містять вхідні дані, графічне зображення кожного з дерев, результати виконання програми для даних цих дерев. В індивідуальному завданні вказано: 1 – дані, які мають бути зчитані з файлів і занесені у вузли дерева, та ознаку (умову) для впорядкування вузлів; 2 – порядок обходу дерева для друку його елементів (даних у вузлах); 3 – дії, що мають бути виконані над елементами дерева; 4 – порядок витирання вузлів для повного видалення дерева; 5 – призначення функції, яку потрібно реалізувати без використання рекурсії. Варіант індивідуального завдання 1) послідовність структур, що мають поля: <Шифр книги>, <№ книгарні> – впорядкування за шифрами; 2) прямий (від кореня) справа наліво; 3) 3.1) знайти всі книги, завезені у задану книгарню; 3.2) перевірити, чи створене дерево збалансоване; якщо ні, то вказати корені усіх незбал...
Антиботан аватар за замовчуванням

17.02.2016 12:02

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини